//
// Created by 高联锐 on 2021/2/18.
//
#include <stdio.h>
int main(){
    printf("%s", "chapter03.c run...\n");

    /**
     * 对我们而言，整数和浮点数的区别是它们的书写方式不同。对计算机而言，它们的区别是储存方式不同。
     * 在一字节内存中以二进制存储数字7
     * 0 0 0 0 0 1      1      1
     *           2^2    2^1    2^0
     *           4   +  2   +  1 = 7
     * 浮点数7.0 可以表示为：0.7E1  0.7*10^1  1表示指数
     */

    /**
     * int
     * 一般而言计算要存储一个int需要占用一个机器字长，例如16位的系统存储一个int需要16位，其取值范围是-32768 ~ 32767 (2^15有一个用于存放符号)
     */

    int a; // 创建内存空间
    int b = 10; // 创建内存空间并对其赋值

    /**
     * C语言提供3个附属关键字修饰基本整数类型:short、long和unsigned
     */
    short int si;
    long int li;
    long long int lli;
    unsigned int ui;
    unsigned long int uli;
    unsigned long long int ulli;
    unsigned short int usi;

    /**
     * char
     * char类型实际上储存的是整数而不是字符
     */
    char c = 'A';
    printf("hello!\'what?\n");


    /**
     * 浮点数
     */
     // float类型必须至少精确表示小数点后的6位有效数字
     float f;
     // double至少必须能表示10位有效数字
     double d;
     long double ld;


    return 0;
};

